{
  "name": "Case 4 – Enterprise Vendor Risk Assessment",
  "nodes": [
    {
      "name": "On form submission",
      "type": "n8n-nodes-base.formTrigger",
      "typeVersion": 2,
      "position": [0, 0],
      "parameters": {
        "formTitle": "Vendor Due Diligence Submission",
        "formDescription": "Submit vendor documents for risk assessment",
        "formFields": {
          "values": [
            { "fieldLabel": "Vendor Name", "requiredField": true },
            { "fieldLabel": "Contact Email", "fieldType": "email", "requiredField": true },
            {
              "fieldLabel": "Vendor_Dossier",
              "fieldType": "file",
              "acceptFileTypes": ".pdf",
              "requiredField": true
            }
          ]
        }
      }
    },
    {
      "name": "Upload file",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [220, 0],
      "parameters": {
        "inputDataFieldName": "Vendor_Dossier",
        "name": "={{ $json['Vendor Name'] + '_Due_Diligence' }}",
        "folderId": "REPLACE_WITH_VENDOR_FOLDER_ID"
      }
    },
    {
      "name": "Download file",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [420, 0],
      "parameters": {
        "operation": "download",
        "fileId": "={{ $json.id }}"
      }
    },
    {
      "name": "Extract Vendor Dossier",
      "type": "n8n-nodes-base.extractFromFile",
      "typeVersion": 1,
      "position": [620, 0],
      "parameters": { "operation": "pdf" }
    },
    {
      "name": "Download Vendor Risk Policy",
      "type": "n8n-nodes-base.googleDrive",
      "typeVersion": 3,
      "position": [820, 0],
      "parameters": {
        "operation": "download",
        "fileId": "REPLACE_WITH_VENDOR_POLICY_FILE_ID"
      }
    },
    {
      "name": "Extract Vendor Policy",
      "type": "n8n-nodes-base.extractFromFile",
      "typeVersion": 1,
      "position": [1020, 0],
      "parameters": { "operation": "pdf" }
    },
    {
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 3,
      "position": [220, 260],
      "parameters": {
        "promptType": "define",
        "text": "=Vendor Dossier:\n{{ $('Extract Vendor Dossier').item.json.text }}\n\nVendor Risk Policy:\n{{ $('Extract Vendor Policy').item.json.text }}",
        "options": {
          "systemMessage": "You are a Senior Procurement Risk Manager. Evaluate vendor risk strictly as per enterprise policy. Output ONLY valid JSON and call the Google Sheets Append Row tool."
        }
      }
    },
    {
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "typeVersion": 1,
      "position": [0, 420],
      "parameters": {
        "model": { "mode": "list", "value": "gpt-4.1-mini" }
      }
    },
    {
      "name": "Append row",
      "type": "n8n-nodes-base.googleSheetsTool",
      "typeVersion": 4,
      "position": [420, 460],
      "parameters": {
        "operation": "append",
        "documentId": "REPLACE_WITH_GOOGLE_SHEET_ID",
        "sheetName": "Vendor Risk Assessment Register"
      }
    },
    {
      "name": "Send Email",
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2,
      "position": [420, 260],
      "parameters": {
        "sendTo": "={{ $('On form submission').item.json['Contact Email'] }}",
        "subject": "Vendor Due Diligence – Assessment Update",
        "message": "={{ 'Dear Partner,<br><br>Your vendor profile has been assessed as part of our internal risk review process. We will reach out if any additional information or mitigations are required.<br><br>Regards,<br>Procurement Risk Team' }}"
      }
    }
  ],
  "connections": {
    "On form submission": { "main": [[{ "node": "Upload file" }]] },
    "Upload file": { "main": [[{ "node": "Download file" }]] },
    "Download file": { "main": [[{ "node": "Extract Vendor Dossier" }]] },
    "Extract Vendor Dossier": { "main": [[{ "node": "Download Vendor Risk Policy" }]] },
    "Download Vendor Risk Policy": { "main": [[{ "node": "Extract Vendor Policy" }]] },
    "Extract Vendor Policy": { "main": [[{ "node": "AI Agent" }]] },
    "OpenAI Chat Model": { "ai_languageModel": [[{ "node": "AI Agent" }]] },
    "Append row": { "ai_tool": [[{ "node": "AI Agent" }]] },
    "AI Agent": { "main": [[{ "node": "Send Email" }]] }
  },
  "active": false
}
